package org.jeecg.modules.innerApi.zhiYunApi.requestVo;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;

/***
 * 新时代智云税控发票开票信息
 */
@Data
public class ZySkfpParam {

    /**发票请求流水号*/
    @ApiModelProperty(value = "发票请求流水号")
    private String fpqqlsh;

    /**税控设备*/
    private String kpzdbs;
    /**发票类型代码*/
    private String fplxdm;
    /**开票类型*/
    private String kplx;
    /**
     * 开票类型枚举
     */
    public static enum kplxEnum {
        zs ("正数","0"),
        fs ("负数","1");
        private final String desc;//描述
        private final String value;//值
        kplxEnum (String desc, String value) {
            this.desc = desc;
            this.value = value;
        }
    }
    /**特殊票种*/
    private String tspz="00";
    /**
     * 特殊票种枚举类型
     */
    public static enum tspzEnum {
        ptkj ("普通开具","00"),
        ncpxs ("农产品销售","01"),
        ncpsg ("农产品收购","02"),
        dktxf ("抵扣通行费","06"),
        qttxf ("其它通行费","07"),
        cpyxs ("成品油销售","08");
        private final String desc;//描述
        private final String value;//值
        tspzEnum (String desc, String value) {
            this.desc = desc;
            this.value = value;
        }
    }
    /**销方名称*/
    private String xhdwmc;
    /**销方税号*/
    private String xhdwsbh;
    /**销方地址电话*/
    private String xhdwdzdh;
    /**销方银行账号*/
    private String xhdwyhzh;
    /**购方名称*/
    private String ghdwmc;
    /**购方税号*/
    private String ghdwsbh;
    /**购方地址电话*/
    private String ghdwdzdh;
    /**购方银行账号*/
    private String ghdwyhzh;
    /**购方邮箱*/
    private String gfkhyx;
    /**购方手机号*/
    private String gfkhdh;
    /**清单标志*/
    private String qdbz;
    /**增税方式*/
    private String zsfs="0";
    /**
     * 增税方式枚举
     */
    public static enum zsfsEnum {
        ptzs ("普通征税","0"),
        jajz ("减按计征","1"),
        cezs ("差额征税","2");
        private final String desc;//描述
        private final String value;//值
        zsfsEnum (String desc, String value) {
            this.desc = desc;
            this.value = value;
        }
    }
    /**合计金额*/
    private String hjje;
    /**合计税额*/
    private String hjse;
    /**价税合计*/
    private String jshj;
    /**扣除额小数点后*/
    private String kce;
    /**备注*/
    private String bz;
    /**开票人*/
    private String kpr;
    /**收款人*/
    private String skr;
    /**复核人*/
    private String fhr;
    /**通知单编号*/
    private String tzdbh;
    /**原发票代码*/
    private String yfpdm;
    /**原发票号码*/
    private String yfphm;

    /**发票明细*/
    private List<ZySkfpmxParam> fyxm;

}
